Florian Müllner [Fri, 25 May 2018 18:18:23 +0000 (18:18 +0000)]
window: Don't refuse to move focus to the grab window
We refuse to move focus while a grab operation is in place. While this
generally makes sense, there's no reason why the window that owns the
grab shouldn't be given the regular input focus as well - we pretty
much assume that the grab window is also the focus window anyway.
In fact there's a strong reason for allowing the focus change here:
If the grab window isn't the focus window, it probably has a modal
transient that is focused instead, and a likely reason for the focus
request is that the transient is being unmanaged and we must move
the focus elsewhere.
Olivier Fourdan [Mon, 18 Jun 2018 10:39:11 +0000 (12:39 +0200)]
window/wayland: Always update monitor for non-user ops
meta_window_wayland_update_main_monitor() would skip the monitor update
if the difference in scale between the old and the new monitor would
cause another monitor change.
While this is suitable when the monitor change results from a user
interactively moving the surface between monitors of different scales,
this can leave dangling pointers to freed monitors when this is
triggered by a change of monitor configuration.
Make sure we update the monitor unconditionally if not from a user
operation.
Andrea Azzarone [Mon, 16 Jul 2018 16:09:40 +0000 (18:09 +0200)]
monitor-manager: Filter out low screen resolutions
Avoid exporting through org.gnome.Mutter.DisplayConfig.GetCurrentState
excessively-low screen resolutions setting both a minimum width and a minimum
height. GetCurrentState is e.g. used by Gnome Control Center to build a list of
selectable resolutions.
If drmModeSetCrtc() is called with no fb, mode or connectors for some
CRTC it may still fail, and we should handle that gracefully instead of
assuming it failed to set a non-disabled state.
gpu-kms: Don't crash if drmModeGetResources returns NULL
DRM drivers can be opened by meta_launcher_open_restricted() even if they don't
implement modesetting. However, drmModeGetResources() will return NULL.
Check whether that happened in meta_gpu_kms_new() and return with an error
instead of crashing.
Simon McVittie [Tue, 31 Jul 2018 14:35:03 +0000 (15:35 +0100)]
mutter (3.28.3-2) unstable; urgency=medium
* Team upload
[ Iain Lane ]
* debian/gbp.conf: Set the upstream branch to upstream/3.28.x, since we've
branched for experimental now.
[ Marco Trevisan (Treviño) ]
* d/p/native-gpu-Handle-drmModeSetCrtc-failing-gracefully.patch:
- Avoid crashing when warning about wrongly set crtc mode
(LP: #1754949)
* d/p/gpu-kms-Don-t-crash-if-drmModeGetResources-returns-N.patch:
- Don't crash if drmModeGetResources returns NULL (LP: #1767956)
* d/p/window-wayland-Always-update-monitor-for-non-user-ops.patch:
- Always update monitor in wayland, avoiding crash (LP: #1784398)
* d/p/monitor-manager-Filter-out-low-screen-resolutions.patch:
- Don't return screen resolutions that can't be applied (LP: #1772831)
* d/p/window-Don-t-refuse-to-move-focus-to-the-grab-window.patch,
d/p/window-Explicitly-exclude-unmanaging-window-from-focus-ag.patch:
- Don't crash if a modal dialog closes while being dragged
(LP: #1422253)
* d/p/monitor-Use-current-monitor-mode-to-check-whether-active.patch:
- Don't try to use an invalid monitor mode to figure out scaling
(LP: #1723615)
[ Simon McVittie ]
* Sort patch series in upstream order, with patches applied upstream
first
* d/copyright: Remove obsolete FSF postal addresses
* Standards-Version: 4.1.5 (no changes required)
* Set Rules-Requires-Root to no
* Update symbols file